package com.wgy.designmode.structure.adapter;

import com.wgy.designmode.structure.adapter.adaptee.Adaptee;
import com.wgy.designmode.structure.adapter.adapter.Adapter;
import com.wgy.designmode.structure.adapter.target.Target;

/**
 * 适配器模式通过引入一个适配器类，将不兼容的接口转换为客户端所期望的接口，
 * 从而使得原本不能一起工作的类可以协同工作。适配器模式在处理遗留代码或第三方库时非常有用，
 * 因为它允许在不修改现有代码的情况下，将新的接口与旧的实现进行集成。
 */
public class AdapterPatternDemo {


    public static void main(String[] args) {

        // 创建一个需要适配的类
        Adaptee adaptee = new Adaptee();

        // 创建一个适配器类，并传入需要适配的类对象
        Target target = new Adapter(adaptee);

        // 调用目标类的方法
        target.request();
    }
}
